home *** CD-ROM | disk | FTP | other *** search
- /*
- kopetemessageevent.h - Kopete Message Event
-
- Copyright (c) 2003 by Olivier Goffart <ogoffart @ kde.org>
- Copyright (c) 2002 by Duncan Mac-Vicar Prett <duncan@kde.org>
- Copyright (c) 2002 by Hendrik vom Lehn <hvl@linux-4-ever.de>
- Copyright (c) 2004 by Richard Smith <richard@metafoo.co.uk>
-
- Kopete (c) 2002 by the Kopete developers <kopete-devel@kde.org>
-
- *************************************************************************
- * *
- * This library is free software; you can redistribute it and/or *
- * modify it under the terms of the GNU Lesser General Public *
- * License as published by the Free Software Foundation; either *
- * version 2 of the License, or (at your option) any later version. *
- * *
- *************************************************************************
- */
-
- #ifndef KOPETEMESSAGEEVENT_H
- #define KOPETEMESSAGEEVENT_H
-
- #include <qobject.h>
-
- #include "kopetemessage.h"
-
- #include "kopete_export.h"
-
- namespace Kopete
- {
-
- /**
- * @author Olivier Goffart <ogoffart @ kde.org>
- * @author Richard Smith <richard@metafoo.co.uk>
- *
- * Kopete::MessageEvent is used when a new messages arrives, it is
- * caught by the UI. It contains just informations about
- * the message, and a signal when it is terminated (i.e.
- * the message is read
- **/
- class KOPETE_EXPORT MessageEvent : public QObject
- {
- Q_OBJECT
-
- public:
- MessageEvent(const Kopete::Message& , QObject* parent=0L, const char *name=0L);
- ~MessageEvent();
-
- /**
- * @return A copy of the message
- */
- Kopete::Message message();
-
- /**
- * Sets the message contained in this event.
- * @param message The new value for the message
- */
- void setMessage( const Kopete::Message &message );
-
- /**
- * The state of the event.
- * - @c Nothing means that the event has not been accepted or ignored
- * - @c Applied if the event has been applied
- * - @c Ignored if the event has been ignored
- */
- enum EventState { Nothing , Applied , Ignored };
-
- EventState state();
-
- public slots:
- /**
- * @deprecated Use accept() instead to continue the processing of this event once the caller has moved to using MessageHandlers
- *
- * execute the event
- */
- void apply();
-
- /**
- * @deprecated Use discard() instead to destroy this event once the caller has moved to using MessageHandlers
- *
- * ignore the event
- */
- void ignore();
-
- /**
- * @brief Passes the event to the next handler
- *
- * Call this when you've finished processing this event
- */
- void accept();
-
- /**
- * @brief Discards the event
- *
- * If this event should not be processed any further, this function
- * should be called to discard it.
- */
- void discard();
-
- signals:
- /**
- * The event has been processed
- */
- void done(Kopete::MessageEvent *);
-
- /**
- * The event has been discarded.
- * @param event The event sending the signal.
- */
- void discarded(Kopete::MessageEvent *event);
-
- /**
- * The event has been accepted by its current handler.
- * @param event The event sending the signal.
- */
- void accepted(Kopete::MessageEvent *event);
-
- private:
- class Private;
- Private *d;
- };
-
- }
-
- #endif
-
- // vim: set noet ts=4 sts=4 sw=4:
-
-